package ve.ucv.patologiaocular.domain;

import java.util.Date;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

@Entity
@Table(name = "SOLICITUD")
public class SolicitudDeBiopsia {
	private Integer id;
	private String tipoSolicitud;
	private String codigo;
	private String ano;
	private Date fecha;
	private int hora;
	private int dia;
	private int semana;
	private int mes;
	private int anio;
	private String diagClinico;
	private String biopsiaAnterior;
	private String radiografias;
	private String examenComple;
	private Paciente PacienteId = new Paciente();
	private Proyecto ProyectoId = new Proyecto();
	private CentroMedico CentroMedicoId = new CentroMedico();
	private Usuario UsuarioId = new Usuario();

	@Id
	@GeneratedValue
	@Column(name = "ID")
	public Integer getId() {
		return id;
	}

	public void setId(Integer id) {
		this.id = id;
	}

	@Column(name = "TIPOSOLICITUD")
	public String getTipoSolicitud() {
		return tipoSolicitud;
	}

	public void setTipoSolicitud(String tipoSolicitud) {
		this.tipoSolicitud = tipoSolicitud;
	}

	@Column(name = "CODIGO")
	public String getCodigo() {
		return codigo;
	}

	public void setCodigo(String codigo) {
		this.codigo = codigo;
	}

	@Column(name = "ANO")
	public String getAno() {
		return ano;
	}

	public void setAno(String ano) {
		this.ano = ano;
	}

	@Column(name = "FECHA")
	@Temporal(TemporalType.DATE)
	public Date getFecha() {
		return fecha;
	}
	
	public void setFecha(Date fecha) {
		this.fecha = fecha;
	}

	@Column(name = "HORA")
	public int getHora() {
		return hora;
	}

	public void setHora(int hora) {
		this.hora = hora;
	}

	@Column(name = "DIA")
	public int getDia() {
		return dia;
	}

	public void setDia(int dia) {
		this.dia = dia;
	}

	@Column(name = "SEMANA")
	public int getSemana() {
		return semana;
	}

	public void setSemana(int semana) {
		this.semana = semana;
	}

	@Column(name = "MES")
	public int getMes() {
		return mes;
	}

	public void setMes(int mes) {
		this.mes = mes;
	}

	@Column(name = "ANIO")
	public int getAnio() {
		return anio;
	}

	public void setAnio(int anio) {
		this.anio = anio;
	}

	@Column(name = "DIAGCLINICO")
	public String getDiagClinico() {
		return diagClinico;
	}

	public void setDiagClinico(String diagClinico) {
		this.diagClinico = diagClinico;
	}

	@Column(name = "BIOPSIAANTERIOR")
	public String getBiopsiaAnterior() {
		return biopsiaAnterior;
	}

	public void setBiopsiaAnterior(String biopsiaAnterior) {
		this.biopsiaAnterior = biopsiaAnterior;
	}
	
	@Column(name = "RADIOGRAFIAS")
	public String getRadiografias() {
		return radiografias;
	}

	public void setRadiografias(String radiografias) {
		this.radiografias = radiografias;
	}
	
	@Column(name = "EXAMENCOMPLE")
	public String getExamenComple() {
		return examenComple;
	}

	public void setExamenComple(String examenComple) {
		this.examenComple = examenComple;
	}
	
	@ManyToOne(optional = true)    
	@JoinColumn(name = "PACIENTE_ID")
	public Paciente getPacienteId() {
		return PacienteId;
	}
	
	public void setPacienteId(Paciente PacienteId) {
		this.PacienteId = PacienteId;
	}
	
	@ManyToOne(optional = true)    
	@JoinColumn(name = "PROYECTO_ID")
	public Proyecto getProyectoId() {
		return ProyectoId;
	}

	public void setProyectoId(Proyecto ProyectoId) {
		this.ProyectoId = ProyectoId;
	}

	@ManyToOne(optional = false)    
	@JoinColumn(name = "CENTROMEDICO_ID")
	public CentroMedico getCentroMedicoId() {
		return CentroMedicoId;
	}

	public void setCentroMedicoId(CentroMedico CentroMedicoId) {
		this.CentroMedicoId = CentroMedicoId;
	}

	@ManyToOne(optional = false)    
	@JoinColumn(name = "USUARIO_ID")
	public Usuario getUsuarioId() {
		return UsuarioId;
	}
	
	public void setUsuarioId(Usuario UsuarioId) {
		this.UsuarioId = UsuarioId;
	}
}

